লারাভেল ভিউস(Laravel Views) Laravel এর গুরুত্বপূর্ণ অংশ যা অ্যাপ্লিকেশনের UI (User Interface) বা ফ্রন্টএন্ড প্রদর্শনের জন্য দায়ী। Laravel ভিউস মূলত HTML ফাইল, তবে Laravel Blade টেমপ্লেট ইঞ্জিন ব্যবহার করে এটি আরও ডাইনামিক এবং শক্তিশালী হয়ে ওঠে। Laravel এর MVC (Model-View-Controller) আর্কিটেকচারে ভিউ হল সেই অংশ যেখানে ব্যবহারকারীর জন্য ডেটা দেখানো হয়।
Laravel এর ভিউস অ্যাপ্লিকেশনের প্রেজেন্টেশন লেয়ারের জন্য ব্যবহৃত হয়। এগুলো Blade টেমপ্লেট ইঞ্জিন দিয়ে তৈরি হয় এবং সাধারণত .blade.php
এক্সটেনশন ব্যবহার করে। Blade টেমপ্লেট ইঞ্জিন PHP এবং HTML মিক্স করে ভিউ তৈরির প্রক্রিয়াকে সহজ করে তোলে।
Laravel শুধু Blade টেমপ্লেট ইঞ্জিন নয়, JavaScript ফ্রেমওয়ার্ক যেমন React বা Vue এর সাথেও কাজ করতে পারে। আপনি laravel/ui
বা Jetstream
প্যাকেজের মাধ্যমে Vue/React ইনস্টল করতে পারেন। React/Vue ভিউ রেন্ডার করতে হলে .jsx
বা .vue
ফাইল তৈরি করতে হবে।
Blade ফাইলগুলো Laravel এর resources/views
ফোল্ডারে থাকে। Blade টেমপ্লেট ইঞ্জিন ব্যবহারের জন্য ভিউ ফাইল তৈরি করতে .blade.php
এক্সটেনশন ব্যবহার করতে হয়। উদাহরণস্বরূপ:
<!-- resources/views/welcome.blade.php -->
<!DOCTYPE html>
<html>
<head>
<title>Laravel App</title>
</head>
<body>
<h1>Laravel অ্যাপে স্বাগতম!</h1>
</body>
</html>
ভিউ রেন্ডার করতে কন্ট্রোলার থেকে এটি কল করতে হবে:
public function showWelcome() {
return view('welcome');
}
Laravel আপনাকে ভিউ ফাইলগুলোকে সাবডিরেক্টরির মধ্যে সাজাতে দেয়। উদাহরণস্বরূপ, আপনি resources/views/admin/dashboard.blade.php
নামে একটি ভিউ তৈরি করতে পারেন এবং এটি রেন্ডার করতে পারেন:
return view('admin.dashboard');
Laravel আপনাকে একাধিক ভিউ অপশন দিয়ে প্রথম পাওয়া ভিউ রেন্ডার করতে দেয়:
return view()->first(['custom', 'default']);
এটি প্রথমে custom.blade.php
খুঁজবে, না পেলে default.blade.php
রেন্ডার করবে।
কোনো ভিউ রয়েছে কিনা তা যাচাই করতে view()->exists()
ফাংশন ব্যবহার করা যেতে পারে:
if (view()->exists('admin.dashboard')) {
return view('admin.dashboard');
}
কন্ট্রোলার থেকে ভিউতে ডেটা পাঠানো যায় একটি অ্যাসোসিয়েটিভ অ্যারের মাধ্যমে:
public function showProfile() {
return view('profile', ['name' => 'John Doe']);
}
এই ডেটা Blade টেমপ্লেটে অ্যাক্সেস করা যায়:
<p>স্বাগতম, {{ $name }}!</p>
কিছু ডেটা যা সব ভিউতে শেয়ার করতে চান, view()->share()
ফাংশন ব্যবহার করা যায়। সাধারণত, এটি AppServiceProvider
এর boot()
মেথডে ব্যবহার করা হয়:
public function boot() {
view()->share('appName', 'Laravel Application');
}
এখন এই $appName
ভেরিয়েবল সমস্ত ভিউতে উপলব্ধ থাকবে।
ভিউ কম্পোজার হল একটি ফাংশন যা নির্দিষ্ট ভিউয়ের জন্য ডেটা রেন্ডার করার আগে ডেটা পাস করতে সাহায্য করে। উদাহরণস্বরূপ:
View::composer('profile', function ($view) {
$view->with('count', User::count());
});
এটি profile
ভিউতে $count
ভেরিয়েবল পাঠাবে।
ভিউ ক্রিয়েটর ভিউ তৈরি হওয়ার মুহূর্তে ডেটা পাস করে। এটা ভিউ রেন্ডার হওয়ার আগে চালানো হয়।
ভিউগুলোকে প্রি-কম্পাইল করার মাধ্যমে Laravel আপনার অ্যাপ্লিকেশনকে দ্রুততর করতে পারে। এটি Artisan কমান্ড দিয়ে করা হয়:
php artisan view:cache
ভিউ ক্যাশ ক্লিয়ার করতে পারেন:
php artisan view:clear
Laravel ভিউ ব্যবস্থাপনা Blade টেমপ্লেট ইঞ্জিনের মাধ্যমে সহজ, ডাইনামিক এবং পুনঃব্যবহারযোগ্য। Laravel এর মাধ্যমে আপনি খুব সহজে ভিউ তৈরি, ডেটা পাস, এবং অপ্টিমাইজ করতে পারেন, যা অ্যাপ্লিকেশনের ফ্রন্টএন্ড উন্নত করে।
Read more